#include "BulletDynamics/ConstraintSolver/btGeneric6DofSpring2Constraint.h"
#ifdef __cplusplus
extern "C" {
#endif
btTranslationalLimitMotor2* bullet_NewbtTranslationalLimitMotor2(){
	btTranslationalLimitMotor2* wrap_out = new btTranslationalLimitMotor2();
	return wrap_out;
}

btTranslationalLimitMotor2* bullet_NewbtTranslationalLimitMotor21(btTranslationalLimitMotor2* other){
	btTranslationalLimitMotor2 const& c_arg_other=(btTranslationalLimitMotor2 const&)(*other);
	btTranslationalLimitMotor2* wrap_out = new btTranslationalLimitMotor2(c_arg_other);
	return wrap_out;
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_bounce(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_bounce);
}

int** bullet_btTranslationalLimitMotor2_GetFieldOfM_currentLimit(btTranslationalLimitMotor2* c_this){
	return (int**)(&c_this->m_currentLimit);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_currentLimitError(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_currentLimitError);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_currentLimitErrorHi(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_currentLimitErrorHi);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_currentLinearDiff(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_currentLinearDiff);
}

bool** bullet_btTranslationalLimitMotor2_GetFieldOfM_enableMotor(btTranslationalLimitMotor2* c_this){
	return (bool**)(&c_this->m_enableMotor);
}

bool** bullet_btTranslationalLimitMotor2_GetFieldOfM_enableSpring(btTranslationalLimitMotor2* c_this){
	return (bool**)(&c_this->m_enableSpring);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_equilibriumPoint(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_equilibriumPoint);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_lowerLimit(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_lowerLimit);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_maxMotorForce(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_maxMotorForce);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_motorCFM(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_motorCFM);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_motorERP(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_motorERP);
}

bool** bullet_btTranslationalLimitMotor2_GetFieldOfM_servoMotor(btTranslationalLimitMotor2* c_this){
	return (bool**)(&c_this->m_servoMotor);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_servoTarget(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_servoTarget);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_springDamping(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_springDamping);
}

bool** bullet_btTranslationalLimitMotor2_GetFieldOfM_springDampingLimited(btTranslationalLimitMotor2* c_this){
	return (bool**)(&c_this->m_springDampingLimited);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_springStiffness(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_springStiffness);
}

bool** bullet_btTranslationalLimitMotor2_GetFieldOfM_springStiffnessLimited(btTranslationalLimitMotor2* c_this){
	return (bool**)(&c_this->m_springStiffnessLimited);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_stopCFM(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_stopCFM);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_stopERP(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_stopERP);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_targetVelocity(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_targetVelocity);
}

btVector3* bullet_btTranslationalLimitMotor2_GetFieldOfM_upperLimit(btTranslationalLimitMotor2* c_this){
	return (btVector3*)(&c_this->m_upperLimit);
}

bool bullet_btTranslationalLimitMotor2_isLimited(btTranslationalLimitMotor2* c_this,int limitIndex){
	int c_arg_limitIndex=limitIndex;
	bool c_out = c_this->isLimited(c_arg_limitIndex);
	bool wrap_out = (c_out);
	return wrap_out;
}

void bullet_btTranslationalLimitMotor2_testLimitValue(btTranslationalLimitMotor2* c_this,int limitIndex,double test_value){
	int c_arg_limitIndex=limitIndex;
	btScalar c_arg_test_value=test_value;
	c_this->testLimitValue(c_arg_limitIndex,c_arg_test_value);
}

btRotationalLimitMotor2* bullet_NewbtRotationalLimitMotor2(){
	btRotationalLimitMotor2* wrap_out = new btRotationalLimitMotor2();
	return wrap_out;
}

btRotationalLimitMotor2* bullet_NewbtRotationalLimitMotor21(btRotationalLimitMotor2* limot){
	btRotationalLimitMotor2 const& c_arg_limot=(btRotationalLimitMotor2 const&)(*limot);
	btRotationalLimitMotor2* wrap_out = new btRotationalLimitMotor2(c_arg_limot);
	return wrap_out;
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_bounce(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_bounce);
}

int bullet_btRotationalLimitMotor2_GetFieldOfM_currentLimit(btRotationalLimitMotor2* c_this){
	return (int)(c_this->m_currentLimit);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_currentLimitError(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_currentLimitError);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_currentLimitErrorHi(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_currentLimitErrorHi);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_currentPosition(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_currentPosition);
}

bool bullet_btRotationalLimitMotor2_GetFieldOfM_enableMotor(btRotationalLimitMotor2* c_this){
	return (bool)(c_this->m_enableMotor);
}

bool bullet_btRotationalLimitMotor2_GetFieldOfM_enableSpring(btRotationalLimitMotor2* c_this){
	return (bool)(c_this->m_enableSpring);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_equilibriumPoint(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_equilibriumPoint);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_hiLimit(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_hiLimit);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_loLimit(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_loLimit);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_maxMotorForce(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_maxMotorForce);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_motorCFM(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_motorCFM);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_motorERP(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_motorERP);
}

bool bullet_btRotationalLimitMotor2_GetFieldOfM_servoMotor(btRotationalLimitMotor2* c_this){
	return (bool)(c_this->m_servoMotor);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_servoTarget(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_servoTarget);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_springDamping(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_springDamping);
}

bool bullet_btRotationalLimitMotor2_GetFieldOfM_springDampingLimited(btRotationalLimitMotor2* c_this){
	return (bool)(c_this->m_springDampingLimited);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_springStiffness(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_springStiffness);
}

bool bullet_btRotationalLimitMotor2_GetFieldOfM_springStiffnessLimited(btRotationalLimitMotor2* c_this){
	return (bool)(c_this->m_springStiffnessLimited);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_stopCFM(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_stopCFM);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_stopERP(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_stopERP);
}

double bullet_btRotationalLimitMotor2_GetFieldOfM_targetVelocity(btRotationalLimitMotor2* c_this){
	return (double)(c_this->m_targetVelocity);
}

bool bullet_btRotationalLimitMotor2_isLimited(btRotationalLimitMotor2* c_this){
	bool c_out = c_this->isLimited();
	bool wrap_out = (c_out);
	return wrap_out;
}

void bullet_btRotationalLimitMotor2_testLimitValue(btRotationalLimitMotor2* c_this,double test_value){
	btScalar c_arg_test_value=test_value;
	c_this->testLimitValue(c_arg_test_value);
}

btGeneric6DofSpring2ConstraintDoubleData2* bullet_NewbtGeneric6DofSpring2ConstraintDoubleData2(){
	btGeneric6DofSpring2ConstraintDoubleData2* wrap_out = new btGeneric6DofSpring2ConstraintDoubleData2();
	return wrap_out;
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularBounce(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularBounce);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularEnableMotor(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_angularEnableMotor);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularEnableSpring(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_angularEnableSpring);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularEquilibriumPoint(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularEquilibriumPoint);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularLowerLimit(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularLowerLimit);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularMaxMotorForce(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularMaxMotorForce);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularMotorCFM(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularMotorCFM);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularMotorERP(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularMotorERP);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularServoMotor(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_angularServoMotor);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularServoTarget(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularServoTarget);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularSpringDamping(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularSpringDamping);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularSpringDampingLimited(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_angularSpringDampingLimited);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularSpringStiffness(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularSpringStiffness);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularSpringStiffnessLimited(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_angularSpringStiffnessLimited);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularStopCFM(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularStopCFM);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularStopERP(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularStopERP);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularTargetVelocity(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularTargetVelocity);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_angularUpperLimit(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_angularUpperLimit);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearBounce(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearBounce);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearEnableMotor(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_linearEnableMotor);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearEnableSpring(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_linearEnableSpring);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearEquilibriumPoint(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearEquilibriumPoint);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearLowerLimit(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearLowerLimit);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearMaxMotorForce(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearMaxMotorForce);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearMotorCFM(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearMotorCFM);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearMotorERP(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearMotorERP);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearServoMotor(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_linearServoMotor);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearServoTarget(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearServoTarget);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearSpringDamping(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearSpringDamping);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearSpringDampingLimited(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_linearSpringDampingLimited);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearSpringStiffness(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearSpringStiffness);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearSpringStiffnessLimited(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_linearSpringStiffnessLimited);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearStopCFM(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearStopCFM);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearStopERP(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearStopERP);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearTargetVelocity(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearTargetVelocity);
}

btVector3DoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_linearUpperLimit(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btVector3DoubleData*)(&c_this->m_linearUpperLimit);
}

char** bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_padding1(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (char**)(&c_this->m_padding1);
}

btTransformDoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_rbAFrame(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btTransformDoubleData*)(&c_this->m_rbAFrame);
}

btTransformDoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_rbBFrame(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btTransformDoubleData*)(&c_this->m_rbBFrame);
}

int bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_rotateOrder(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (int)(c_this->m_rotateOrder);
}

btTypedConstraintDoubleData* bullet_btGeneric6DofSpring2ConstraintDoubleData2_GetFieldOfM_typeConstraintData(btGeneric6DofSpring2ConstraintDoubleData2* c_this){
	return (btTypedConstraintDoubleData*)(&c_this->m_typeConstraintData);
}

btGeneric6DofSpring2ConstraintData* bullet_NewbtGeneric6DofSpring2ConstraintData(){
	btGeneric6DofSpring2ConstraintData* wrap_out = new btGeneric6DofSpring2ConstraintData();
	return wrap_out;
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularBounce(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularBounce);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularEnableMotor(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_angularEnableMotor);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularEnableSpring(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_angularEnableSpring);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularEquilibriumPoint(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularEquilibriumPoint);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularLowerLimit(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularLowerLimit);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularMaxMotorForce(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularMaxMotorForce);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularMotorCFM(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularMotorCFM);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularMotorERP(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularMotorERP);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularServoMotor(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_angularServoMotor);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularServoTarget(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularServoTarget);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularSpringDamping(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularSpringDamping);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularSpringDampingLimited(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_angularSpringDampingLimited);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularSpringStiffness(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularSpringStiffness);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularSpringStiffnessLimited(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_angularSpringStiffnessLimited);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularStopCFM(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularStopCFM);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularStopERP(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularStopERP);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularTargetVelocity(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularTargetVelocity);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_angularUpperLimit(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_angularUpperLimit);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearBounce(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearBounce);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearEnableMotor(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_linearEnableMotor);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearEnableSpring(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_linearEnableSpring);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearEquilibriumPoint(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearEquilibriumPoint);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearLowerLimit(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearLowerLimit);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearMaxMotorForce(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearMaxMotorForce);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearMotorCFM(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearMotorCFM);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearMotorERP(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearMotorERP);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearServoMotor(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_linearServoMotor);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearServoTarget(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearServoTarget);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearSpringDamping(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearSpringDamping);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearSpringDampingLimited(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_linearSpringDampingLimited);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearSpringStiffness(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearSpringStiffness);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearSpringStiffnessLimited(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_linearSpringStiffnessLimited);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearStopCFM(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearStopCFM);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearStopERP(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearStopERP);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearTargetVelocity(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearTargetVelocity);
}

btVector3FloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_linearUpperLimit(btGeneric6DofSpring2ConstraintData* c_this){
	return (btVector3FloatData*)(&c_this->m_linearUpperLimit);
}

char** bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_padding1(btGeneric6DofSpring2ConstraintData* c_this){
	return (char**)(&c_this->m_padding1);
}

btTransformFloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_rbAFrame(btGeneric6DofSpring2ConstraintData* c_this){
	return (btTransformFloatData*)(&c_this->m_rbAFrame);
}

btTransformFloatData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_rbBFrame(btGeneric6DofSpring2ConstraintData* c_this){
	return (btTransformFloatData*)(&c_this->m_rbBFrame);
}

int bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_rotateOrder(btGeneric6DofSpring2ConstraintData* c_this){
	return (int)(c_this->m_rotateOrder);
}

btTypedConstraintData* bullet_btGeneric6DofSpring2ConstraintData_GetFieldOfM_typeConstraintData(btGeneric6DofSpring2ConstraintData* c_this){
	return (btTypedConstraintData*)(&c_this->m_typeConstraintData);
}

btGeneric6DofSpring2Constraint* bullet_NewbtGeneric6DofSpring2Constraint(btRigidBody* rbA,btRigidBody* rbB,btTransform* frameInA,btTransform* frameInB,RotateOrder rotOrder){
	btRigidBody& c_arg_rbA=(btRigidBody&)(*rbA);
	btRigidBody& c_arg_rbB=(btRigidBody&)(*rbB);
	btTransform const& c_arg_frameInA=(btTransform const&)(*frameInA);
	btTransform const& c_arg_frameInB=(btTransform const&)(*frameInB);
	RotateOrder c_arg_rotOrder=rotOrder;
	btGeneric6DofSpring2Constraint* wrap_out = new btGeneric6DofSpring2Constraint(c_arg_rbA,c_arg_rbB,c_arg_frameInA,c_arg_frameInB,c_arg_rotOrder);
	return wrap_out;
}

btGeneric6DofSpring2Constraint* bullet_NewbtGeneric6DofSpring2Constraint1(btRigidBody* rbB,btTransform* frameInB,RotateOrder rotOrder){
	btRigidBody& c_arg_rbB=(btRigidBody&)(*rbB);
	btTransform const& c_arg_frameInB=(btTransform const&)(*frameInB);
	RotateOrder c_arg_rotOrder=rotOrder;
	btGeneric6DofSpring2Constraint* wrap_out = new btGeneric6DofSpring2Constraint(c_arg_rbB,c_arg_frameInB,c_arg_rotOrder);
	return wrap_out;
}

double bullet_btGeneric6DofSpring2Constraint_btGetMatrixElem(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,int index){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	int c_arg_index=index;
	btScalar c_out = c_this->btGetMatrixElem(c_arg_mat,c_arg_index);
	double wrap_out = (c_out);
	return wrap_out;
}

void bullet_btGeneric6DofSpring2Constraint_calculateTransforms(btGeneric6DofSpring2Constraint* c_this,btTransform* transA,btTransform* transB){
	btTransform const& c_arg_transA=(btTransform const&)(*transA);
	btTransform const& c_arg_transB=(btTransform const&)(*transB);
	c_this->calculateTransforms(c_arg_transA,c_arg_transB);
}

void bullet_btGeneric6DofSpring2Constraint_calculateTransforms1(btGeneric6DofSpring2Constraint* c_this){
	c_this->calculateTransforms();
}

void bullet_btGeneric6DofSpring2Constraint_enableMotor(btGeneric6DofSpring2Constraint* c_this,int index,bool onOff){
	int c_arg_index=index;
	bool c_arg_onOff=onOff;
	c_this->enableMotor(c_arg_index,c_arg_onOff);
}

void bullet_btGeneric6DofSpring2Constraint_enableSpring(btGeneric6DofSpring2Constraint* c_this,int index,bool onOff){
	int c_arg_index=index;
	bool c_arg_onOff=onOff;
	c_this->enableSpring(c_arg_index,c_arg_onOff);
}

double bullet_btGeneric6DofSpring2Constraint_getAngle(btGeneric6DofSpring2Constraint* c_this,int axis_index){
	int c_arg_axis_index=axis_index;
	btScalar c_out = c_this->getAngle(c_arg_axis_index);
	double wrap_out = (c_out);
	return wrap_out;
}

void bullet_btGeneric6DofSpring2Constraint_getAngularLowerLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* angularLower){
	btVector3& c_arg_angularLower=(btVector3&)(*angularLower);
	c_this->getAngularLowerLimit(c_arg_angularLower);
}

void bullet_btGeneric6DofSpring2Constraint_getAngularLowerLimitReversed(btGeneric6DofSpring2Constraint* c_this,btVector3* angularLower){
	btVector3& c_arg_angularLower=(btVector3&)(*angularLower);
	c_this->getAngularLowerLimitReversed(c_arg_angularLower);
}

void bullet_btGeneric6DofSpring2Constraint_getAngularUpperLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* angularUpper){
	btVector3& c_arg_angularUpper=(btVector3&)(*angularUpper);
	c_this->getAngularUpperLimit(c_arg_angularUpper);
}

void bullet_btGeneric6DofSpring2Constraint_getAngularUpperLimitReversed(btGeneric6DofSpring2Constraint* c_this,btVector3* angularUpper){
	btVector3& c_arg_angularUpper=(btVector3&)(*angularUpper);
	c_this->getAngularUpperLimitReversed(c_arg_angularUpper);
}

btVector3* bullet_btGeneric6DofSpring2Constraint_getAxis(btGeneric6DofSpring2Constraint* c_this,int axis_index){
	int c_arg_axis_index=axis_index;
	btVector3 c_out = c_this->getAxis(c_arg_axis_index);
	btVector3* wrap_out = new btVector3(c_out);
	return wrap_out;
}

btTransform* bullet_btGeneric6DofSpring2Constraint_getCalculatedTransformA(btGeneric6DofSpring2Constraint* c_this){
	btTransform const& c_out = c_this->getCalculatedTransformA();
	btTransform* wrap_out = (btTransform*)(&c_out);
	return wrap_out;
}

btTransform* bullet_btGeneric6DofSpring2Constraint_getCalculatedTransformB(btGeneric6DofSpring2Constraint* c_this){
	btTransform const& c_out = c_this->getCalculatedTransformB();
	btTransform* wrap_out = (btTransform*)(&c_out);
	return wrap_out;
}

btTransform* bullet_btGeneric6DofSpring2Constraint_getFrameOffsetA(btGeneric6DofSpring2Constraint* c_this){
	btTransform const& c_out = c_this->getFrameOffsetA();
	btTransform* wrap_out = (btTransform*)(&c_out);
	return wrap_out;
}

btTransform* bullet_btGeneric6DofSpring2Constraint_getFrameOffsetA1(btGeneric6DofSpring2Constraint* c_this){
	btTransform& c_out = c_this->getFrameOffsetA();
	btTransform* wrap_out = (btTransform*)(&c_out);
	return wrap_out;
}

btTransform* bullet_btGeneric6DofSpring2Constraint_getFrameOffsetB(btGeneric6DofSpring2Constraint* c_this){
	btTransform const& c_out = c_this->getFrameOffsetB();
	btTransform* wrap_out = (btTransform*)(&c_out);
	return wrap_out;
}

btTransform* bullet_btGeneric6DofSpring2Constraint_getFrameOffsetB1(btGeneric6DofSpring2Constraint* c_this){
	btTransform& c_out = c_this->getFrameOffsetB();
	btTransform* wrap_out = (btTransform*)(&c_out);
	return wrap_out;
}

void bullet_btGeneric6DofSpring2Constraint_getLinearLowerLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* linearLower){
	btVector3& c_arg_linearLower=(btVector3&)(*linearLower);
	c_this->getLinearLowerLimit(c_arg_linearLower);
}

void bullet_btGeneric6DofSpring2Constraint_getLinearUpperLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* linearUpper){
	btVector3& c_arg_linearUpper=(btVector3&)(*linearUpper);
	c_this->getLinearUpperLimit(c_arg_linearUpper);
}

double bullet_btGeneric6DofSpring2Constraint_getRelativePivotPosition(btGeneric6DofSpring2Constraint* c_this,int axis_index){
	int c_arg_axis_index=axis_index;
	btScalar c_out = c_this->getRelativePivotPosition(c_arg_axis_index);
	double wrap_out = (c_out);
	return wrap_out;
}

btRotationalLimitMotor2* bullet_btGeneric6DofSpring2Constraint_getRotationalLimitMotor(btGeneric6DofSpring2Constraint* c_this,int index){
	int c_arg_index=index;
	btRotationalLimitMotor2 * c_out = c_this->getRotationalLimitMotor(c_arg_index);
	btRotationalLimitMotor2* wrap_out = (btRotationalLimitMotor2*)(void*)(c_out);
	return wrap_out;
}

RotateOrder bullet_btGeneric6DofSpring2Constraint_getRotationOrder(btGeneric6DofSpring2Constraint* c_this){
	RotateOrder c_out = c_this->getRotationOrder();
	RotateOrder wrap_out = (c_out);
	return wrap_out;
}

btTranslationalLimitMotor2* bullet_btGeneric6DofSpring2Constraint_getTranslationalLimitMotor(btGeneric6DofSpring2Constraint* c_this){
	btTranslationalLimitMotor2 * c_out = c_this->getTranslationalLimitMotor();
	btTranslationalLimitMotor2* wrap_out = (btTranslationalLimitMotor2*)(void*)(c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_isLimited(btGeneric6DofSpring2Constraint* c_this,int limitIndex){
	int c_arg_limitIndex=limitIndex;
	bool c_out = c_this->isLimited(c_arg_limitIndex);
	bool wrap_out = (c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_matrixToEulerXYZ(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,btVector3* xyz){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	btVector3& c_arg_xyz=(btVector3&)(*xyz);
	bool c_out = c_this->matrixToEulerXYZ(c_arg_mat,c_arg_xyz);
	bool wrap_out = (c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_matrixToEulerXZY(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,btVector3* xyz){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	btVector3& c_arg_xyz=(btVector3&)(*xyz);
	bool c_out = c_this->matrixToEulerXZY(c_arg_mat,c_arg_xyz);
	bool wrap_out = (c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_matrixToEulerYXZ(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,btVector3* xyz){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	btVector3& c_arg_xyz=(btVector3&)(*xyz);
	bool c_out = c_this->matrixToEulerYXZ(c_arg_mat,c_arg_xyz);
	bool wrap_out = (c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_matrixToEulerYZX(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,btVector3* xyz){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	btVector3& c_arg_xyz=(btVector3&)(*xyz);
	bool c_out = c_this->matrixToEulerYZX(c_arg_mat,c_arg_xyz);
	bool wrap_out = (c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_matrixToEulerZXY(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,btVector3* xyz){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	btVector3& c_arg_xyz=(btVector3&)(*xyz);
	bool c_out = c_this->matrixToEulerZXY(c_arg_mat,c_arg_xyz);
	bool wrap_out = (c_out);
	return wrap_out;
}

bool bullet_btGeneric6DofSpring2Constraint_matrixToEulerZYX(btGeneric6DofSpring2Constraint* c_this,btMatrix3x3* mat,btVector3* xyz){
	btMatrix3x3 const& c_arg_mat=(btMatrix3x3 const&)(*mat);
	btVector3& c_arg_xyz=(btVector3&)(*xyz);
	bool c_out = c_this->matrixToEulerZYX(c_arg_mat,c_arg_xyz);
	bool wrap_out = (c_out);
	return wrap_out;
}

void bullet_btGeneric6DofSpring2Constraint_setAngularLowerLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* angularLower){
	btVector3 const& c_arg_angularLower=(btVector3 const&)(*angularLower);
	c_this->setAngularLowerLimit(c_arg_angularLower);
}

void bullet_btGeneric6DofSpring2Constraint_setAngularLowerLimitReversed(btGeneric6DofSpring2Constraint* c_this,btVector3* angularLower){
	btVector3 const& c_arg_angularLower=(btVector3 const&)(*angularLower);
	c_this->setAngularLowerLimitReversed(c_arg_angularLower);
}

void bullet_btGeneric6DofSpring2Constraint_setAngularUpperLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* angularUpper){
	btVector3 const& c_arg_angularUpper=(btVector3 const&)(*angularUpper);
	c_this->setAngularUpperLimit(c_arg_angularUpper);
}

void bullet_btGeneric6DofSpring2Constraint_setAngularUpperLimitReversed(btGeneric6DofSpring2Constraint* c_this,btVector3* angularUpper){
	btVector3 const& c_arg_angularUpper=(btVector3 const&)(*angularUpper);
	c_this->setAngularUpperLimitReversed(c_arg_angularUpper);
}

void bullet_btGeneric6DofSpring2Constraint_setAxis(btGeneric6DofSpring2Constraint* c_this,btVector3* axis1,btVector3* axis2){
	btVector3 const& c_arg_axis1=(btVector3 const&)(*axis1);
	btVector3 const& c_arg_axis2=(btVector3 const&)(*axis2);
	c_this->setAxis(c_arg_axis1,c_arg_axis2);
}

void bullet_btGeneric6DofSpring2Constraint_setBounce(btGeneric6DofSpring2Constraint* c_this,int index,double bounce){
	int c_arg_index=index;
	btScalar c_arg_bounce=bounce;
	c_this->setBounce(c_arg_index,c_arg_bounce);
}

void bullet_btGeneric6DofSpring2Constraint_setDamping(btGeneric6DofSpring2Constraint* c_this,int index,double damping,bool limitIfNeeded){
	int c_arg_index=index;
	btScalar c_arg_damping=damping;
	bool c_arg_limitIfNeeded=limitIfNeeded;
	c_this->setDamping(c_arg_index,c_arg_damping,c_arg_limitIfNeeded);
}

void bullet_btGeneric6DofSpring2Constraint_setEquilibriumPoint(btGeneric6DofSpring2Constraint* c_this){
	c_this->setEquilibriumPoint();
}

void bullet_btGeneric6DofSpring2Constraint_setEquilibriumPoint1(btGeneric6DofSpring2Constraint* c_this,int index){
	int c_arg_index=index;
	c_this->setEquilibriumPoint(c_arg_index);
}

void bullet_btGeneric6DofSpring2Constraint_setEquilibriumPoint2(btGeneric6DofSpring2Constraint* c_this,int index,double val){
	int c_arg_index=index;
	btScalar c_arg_val=val;
	c_this->setEquilibriumPoint(c_arg_index,c_arg_val);
}

void bullet_btGeneric6DofSpring2Constraint_setFrames(btGeneric6DofSpring2Constraint* c_this,btTransform* frameA,btTransform* frameB){
	btTransform const& c_arg_frameA=(btTransform const&)(*frameA);
	btTransform const& c_arg_frameB=(btTransform const&)(*frameB);
	c_this->setFrames(c_arg_frameA,c_arg_frameB);
}

void bullet_btGeneric6DofSpring2Constraint_setLimit(btGeneric6DofSpring2Constraint* c_this,int axis,double lo,double hi){
	int c_arg_axis=axis;
	btScalar c_arg_lo=lo;
	btScalar c_arg_hi=hi;
	c_this->setLimit(c_arg_axis,c_arg_lo,c_arg_hi);
}

void bullet_btGeneric6DofSpring2Constraint_setLimitReversed(btGeneric6DofSpring2Constraint* c_this,int axis,double lo,double hi){
	int c_arg_axis=axis;
	btScalar c_arg_lo=lo;
	btScalar c_arg_hi=hi;
	c_this->setLimitReversed(c_arg_axis,c_arg_lo,c_arg_hi);
}

void bullet_btGeneric6DofSpring2Constraint_setLinearLowerLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* linearLower){
	btVector3 const& c_arg_linearLower=(btVector3 const&)(*linearLower);
	c_this->setLinearLowerLimit(c_arg_linearLower);
}

void bullet_btGeneric6DofSpring2Constraint_setLinearUpperLimit(btGeneric6DofSpring2Constraint* c_this,btVector3* linearUpper){
	btVector3 const& c_arg_linearUpper=(btVector3 const&)(*linearUpper);
	c_this->setLinearUpperLimit(c_arg_linearUpper);
}

void bullet_btGeneric6DofSpring2Constraint_setMaxMotorForce(btGeneric6DofSpring2Constraint* c_this,int index,double force){
	int c_arg_index=index;
	btScalar c_arg_force=force;
	c_this->setMaxMotorForce(c_arg_index,c_arg_force);
}

void bullet_btGeneric6DofSpring2Constraint_setRotationOrder(btGeneric6DofSpring2Constraint* c_this,RotateOrder order){
	RotateOrder c_arg_order=order;
	c_this->setRotationOrder(c_arg_order);
}

void bullet_btGeneric6DofSpring2Constraint_setServo(btGeneric6DofSpring2Constraint* c_this,int index,bool onOff){
	int c_arg_index=index;
	bool c_arg_onOff=onOff;
	c_this->setServo(c_arg_index,c_arg_onOff);
}

void bullet_btGeneric6DofSpring2Constraint_setServoTarget(btGeneric6DofSpring2Constraint* c_this,int index,double target){
	int c_arg_index=index;
	btScalar c_arg_target=target;
	c_this->setServoTarget(c_arg_index,c_arg_target);
}

void bullet_btGeneric6DofSpring2Constraint_setStiffness(btGeneric6DofSpring2Constraint* c_this,int index,double stiffness,bool limitIfNeeded){
	int c_arg_index=index;
	btScalar c_arg_stiffness=stiffness;
	bool c_arg_limitIfNeeded=limitIfNeeded;
	c_this->setStiffness(c_arg_index,c_arg_stiffness,c_arg_limitIfNeeded);
}

void bullet_btGeneric6DofSpring2Constraint_setTargetVelocity(btGeneric6DofSpring2Constraint* c_this,int index,double velocity){
	int c_arg_index=index;
	btScalar c_arg_velocity=velocity;
	c_this->setTargetVelocity(c_arg_index,c_arg_velocity);
}

#ifdef __cplusplus
}
#endif
